/**
 * 
 */
package de.idgard.android.addon.backend;

import de.idgard.json.data.PrivacyCounter;
import de.idgard.json.response.HistoryListResponse;
import de.idgard.json.response.PrivacyProfilesResponse;
import de.idgard.json.response.TransparencyChangeResponse;
import de.idgard.json.transport.AsyncRequest;
import de.idgard.webapp.shared.dto.bookmark.BookmarkFolderDto;
import de.idgard.webapp.shared.dto.bookmark.BookmarkLinkDto;
import de.idgard.webapp.shared.dto.privacy.HistoryItemDto;
import de.idgard.webapp.shared.dto.profile.SimpleProfileDto;

/**
 * 
 * @author <a href="mailto:vesko.georgiev@uniscon.com">Vesko Georgiev</a>
 */
public interface IDGBackendService {

	AsyncRequest<TransparencyChangeResponse> changeTransparencyLevel(int value);

	AsyncRequest<Void> logoff();

	AsyncRequest<Void> saveBookmark(BookmarkLinkDto bookmark);

	AsyncRequest<Void> savePrivacyData(SimpleProfileDto privacyProfile);

	AsyncRequest<PrivacyProfilesResponse> getPrivacyConnectProfiles(String host);

	AsyncRequest<String> getPrivacyConnectProfileToken(String id);

	AsyncRequest<PrivacyCounter> queryPrivacyCounter();

	AsyncRequest<Void> resetPrivacyCounter();

	AsyncRequest<Void> submitHistoryEntry(HistoryItemDto entry);

	AsyncRequest<BookmarkFolderDto> getBookmarks();

	AsyncRequest<HistoryListResponse> getHistory(int count);

}
